package day02;
//此类是用于验证int类型的测试demo
public class Test02 {
    //程序的主入口
    public static void main(String[] args) {
//        int类型简述
//        整型，占4个字节，范围-2147483648~2147483647,即负2的31次方到2的31次方减一
//        变量(数据)存储在内存中，内存时有大小的
//        变量到底占用多大内存，是由它的数据类型控制的
//        整数直接量默认为int类型，但不能超出范围，若超范围则发生编译错误
//        两个整数相除，结果还是整数，小数位无条件舍弃(不会四舍五入)
//        运算时若超出范围，则发生溢出，溢出不是错误，但是需要避免
        int a=10;
        int b=2147483647;  //定义int类型的变量b，存储int类型的最大值
        System.out.println(a+b);  //溢出，但是溢出的数据没有价值
        System.out.println(a/3);  //输出3，指挥保留小数位
        System.out.println(2147483647);
        //报错，因为数字的直接量是int类型，超出int默认存储范围，编译错误
        System.out.println(2147483650L);
        long c=-9223372036854775808L;//长整型long的最小值
        long C=9223372036854775807L;//长整型long的最大值
        //long d=-9223372036854775809L;//超范围，报错
        //long D=9223372036854775808L;//超范围，报错
        long d=2147483647;
        long D=d+2;
        System.out.println(D); //可以输出2147483649


    }
}
